<?php
    /*
Autor: Jonathan Vindas Abarca
Fecha: 13/07/2012
Descripción: Este archivo contiene la declaración de la clase controladora de precios.
Bitacora de modificaciones:
<
    Autor: 
    Fecha: 
    Descripción: 
>
*/     
    
    function agregarPrecios() 
    {        
        require '../modelos/preciosModelo.php';        
        $bandera = false;              
        try 
        {                        
            if ($_POST['accion'] == 'agregarPrecio') 
            {
                if( encontrarPrecioDuplicado($_POST['cmbEmbalaje'],$_POST['cmbLocalidad'])==false)
                {                                
                    agregarPrecio($_POST['cmbEmbalaje'], $_POST['txtPrecio'],$_POST['cmbLocalidad']);
                    $bandera='Agrega';                    
                }
                else
                {
                    $bandera='ExistePrecio';
                }
            }
            if ($_POST['accion'] == 'modificarPrecio') 
            {
                if( encontrarPrecioDuplicado($_POST['hddCodEmbalaje'],$_POST['hddCodLocalidad'])==true)
                {                                 
                    modificarPrecio($_POST['hddCodEmbalaje'], $_POST['txtPrecio'],$_POST['hddCodLocalidad']);
                    $bandera='Modifica';                    
                }                
            }
            $accion = 'agregarPrecio';
            require 'GuiasEnvio/agregarPrecio.php';
            mensajeConfirmacionPrecios($bandera);
        } 
        catch (Exception $e) 
        {
            echo 'Excepción capturada: ', $e->getMessage(), "\n";
        }
    }
    
    function direccionarAgregarPrecio()
    {
        require_once 'dataControlador.php';
        require '../modelos/preciosModelo.php';        
        if(validarPermisos('agregarTransportista'))
        {
            $accion = 'agregarPrecio';
            require 'GuiasEnvio/agregarPrecio.php';
        }        
        else
        {            
            $items = buscarTodosLosPrecios();
            $total_registros =sizeof($items);                 
            require 'GuiasEnvio/listarPrecio.php';    
            mensajeConfirmacionPrecios('SinPermisos'); 
        }                
    }    
    
    function eliminarPrecios() 
    {
        require_once 'dataControlador.php';
        require '../modelos/preciosModelo.php';
        require_once('FirePHPCore/FirePHP.class.php');
        $firephp = FirePHP::getInstance(true);
        $firephp->log($_GET['codigo']);
        if( isset($_GET['codigo'])&& isset($_GET['embalaje']) )
        {                                   
            if(validarPermisos('eliminarTransportistaControlador'))
                {
                    eliminarPrecioControlador($_GET['codigo'],$_GET['embalaje']);
                    $bandera='Elimina';    
                }
                else
                {
                    $bandera='SinPermisos';                      
                }                
        }        
        listarPrecios();
        mensajeConfirmacionPrecios($bandera);
    }                    
    
    function listarPrecios() 
    {
        require_once 'dataControlador.php';
        require_once '../modelos/preciosModelo.php';             
        if(validarPermisos('buscarTodosLosPrecios'))
        {
            $items = buscarTodosLosPrecios();
            $total_registros =sizeof($items);                 
            require 'GuiasEnvio/listarPrecio.php';    
        }
        else
        {            
            $items = null;                        
            require 'GuiasEnvio/listarPrecio.php'; 
            mensajeConfirmacionPrecios('SinPermisos'); 
        }
    }       
    
    function mensajeConfirmacionPrecios($bandera) 
    {                
        try 
        {
            if($bandera=='Agrega')
            {
                ?>
                <script type="text/javascript">
                $().message("Se agrego el Precio Satisfactoriamente.");
                e.preventDefault();
                $().message($("#message").val());
                </script>
                <?php
            }
            elseif ($bandera=='Modifica') 
            {            
                ?>
                <script type="text/javascript">
                $().message("Se modifico el Precio Satisfactoriamente.");
                e.preventDefault();
                $().message($("#message").val());
                </script>
                <?php        
            }
            elseif ($bandera=='Elimina') 
            {        
                ?>
                <script type="text/javascript">
                $().message("Se elimino el Precio Satisfactoriamente.");
                e.preventDefault();
                $().message($("#message").val());
                </script>
                <?php
            }
            elseif ($bandera=='ExistePrecio') 
            {        
                ?>
                <script type="text/javascript">
                $().message("Este precio ya existe");
                e.preventDefault();
                $().message($("#message").val());
                </script>
                <?php    
            }
            elseif ($bandera=='SinPermisos') 
            {
                ?>
                <script type="text/javascript">
                $().message("Su usuario no posee permisos para esta acci&oacute;n.");
                e.preventDefault();
                $().message($("#message").val());
                </script>
                <?php
            }
        }
        catch (Exception $e) 
        {
            echo 'Excepción capturada: ',  $e->getMessage(), "\n";
        }
    }

    function modificarPrecios() 
    {
        require_once 'dataControlador.php';
        require '../modelos/preciosModelo.php';        
        if(validarPermisos('modificarPrecio'))
        {
            $codigoEmbalaje = $_POST['hddCodigoEmbalaje'];
            $codigoLocalidad = $_POST['hddCodigoLocalidad'];
            $valorPrecio = $_POST['hddPrecio'];
            $accion = 'modificarPrecio';        
            require 'GuiasEnvio/agregarPrecio.php';
        }
        else
        {   
            $items = buscarTodosLosPrecios();
            $total_registros =sizeof($items);                 
            require 'GuiasEnvio/listarPrecio.php';    
            mensajeConfirmacionPrecios('SinPermisos');                  
        }                                 
    }               
              
    function validarIdPrecio($codigoEmbalaje,$localidad) 
    {
       //require '../modelos/preciosModelo.php';
       require_once '../modelos/preciosModelo.php';        
       $existe = encontrarPrecio($codigoEmbalaje,$localidad);
       return $existe;
    }    
?>